perm filename FOO.BAR[MAC,LSP]2 blob sn#488233 filedate 1979-12-05 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	   MACAID 						  -*-LISP-*-
C00007 ENDMK
CāŠ—;
;;;   MACAID 						  -*-LISP-*-
;;;   **************************************************************
;;;   ***** MACLISP ******* MACRO DEFINITION AIDS  *****************
;;;   **************************************************************
;;;   ** (C) COPYRIGHT 1979 MASSACHUSETTS INSTITUTE OF TECHNOLOGY **
;;;   ****** THIS IS A READ-ONLY FILE! (ALL WRITES RESERVED) *******
;;;   **************************************************************

;;; Current contents:
;;;   Functs:  FLATTEN-SYMS,  |carcdrp/||,  |no-funp/||, |side-effectsp/|| 
;;;	       +INTERNAL-DUP-P
;;;   Macros:  HERALD,  DEFSIMPLEMAC,  |constant-p/||



(eval-when (eval compile)
	   (cond ((status nofeature maclisp))
		 ((status macro /#))
		 ((getl '+INTERNAL-/#-MACRO '(SUBR AUTOLOAD))
		  (setsyntax '/# 'SPLICING '+INTERNAL-/#-MACRO))
		 ((fasload (LISP) SHARPM)))
)


; This is another of those losing files that need themselves loaded in 
;   order to be able to be compiled.
(eval-when (compile)
 (and (status nofeature macaid) 	(load '((LISP) MACAID)))
)

(defmacro HERALD (package-name &optional (version-number '||))
   (let* ((file (cond ((filep infile) 
		       (caddr (truename infile)))))
	  (v 	(cond ((and file (fixp (car (errset (readlist (exploden file)) () )))) 
		          file)
		      ('t version-number))) )
	 `(PROG2 (COND ((STATUS NOFEATURE NOLDMSG)
			(TERPRI MSGFILES)
			(PRINC '|;Loading | MSGFILES)
			(PRINC ',package-name MSGFILES)
			(PRINC '| | MSGFILES)
			(PRINC ',v MSGFILES)
			(PRINC '| | MSGFILES)))
		 (DEFPROP ,package-name ,v VERSION))))